﻿// -------------------------------------------------------------------------
//    @FileName         :    NFServiceGM.h
//    @Author           :    Gao.Yi
//    @Date             :    2025-10-13
//    @Email			:    445267987@qq.com
//    @Module           :    NFServiceGM
//    @Desc             :
//
// -------------------------------------------------------------------------

#pragma once

#include "proto_cs.pb.h"
#include "NFComm/NFObjCommon/NFObject.h"
class NFPlayer;

class NFServiceGM
{
public:
    static int AddLevel(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int AddItem(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int UnitTest(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int ClearBag(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int ClearBagData(NFPlayer* pPlayer, int bagType);
    static int ArrangeBag(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int SaveStorage(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int PickStorage(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
    static int BuyGrid(NFPlayer* pPlayer, NFDataPackage& packet, const std::vector<std::string>& vecParams, std::string& info);
public:
    static int PackMessage(NFPlayer* pPlayer, NFDataPackage& packet, int msgId, const proto_ff::Proto_CSReq& req);
};